Author

Tony Duan

1 data

Code
library(tidyverse)


library(leaflet)
library(geojsonio)
library(leaflet.extras)

2 display at openstreet map

Code
m <- leaflet() %>%
   # Add default OpenStreetMap map tiles
  addTiles() %>%  
  # add markers
  addMarkers(lng=174.768, lat=-36.852, popup="The birthplace of R")

m  

3 display at google map

Code
leaflet() |>
  # add base mao
  addTiles(urlTemplate = "https://mt1.google.com/vt/lyrs=m&x={x}&y={y}&z={z}") |>
  # set view
  setView(116.347817690225, 39.997202126977, zoom = 16) |>
  # add markers
  addMarkers(116.347817690225, 39.997202126977)

4 Third-Party map

Code
m <- leaflet() %>% setView(lng = -71.0589, lat = 42.3601, zoom = 10)

m %>% addProviderTiles(providers$Stadia.StamenToner)

5 add pop up

Popups are small boxes containing arbitrary HTML, that point to a specific point on the map.

Code
content <- paste(sep = "<br/>",
  "<b><a href='https://www.samurainoodle.com/'>Samurai Noodle</a></b>",
  "606 5th Ave. S",
  "Seattle, WA 98138"
)

leaflet() %>% addTiles() %>%
  setView(-122.327298, 47.597131,zoom = 12) %>% 
  addPopups(-122.327298, 47.597131, content,
    #options = popupOptions(closeButton = FALSE)
    options = popupOptions(closeButton = FALSE)
  )

6 add Markers

Code
library(htmltools)

df <- read.csv(textConnection(
"Name,Lat,Long
Samurai Noodle,47.597131,-122.327298
Kukai Ramen,47.6154,-122.327157
Tsukushinbo,47.59987,-122.326726"
))

leaflet(df) %>% addTiles() %>%
  addMarkers(~Long, ~Lat, popup = ~htmlEscape(Name))

7 add Labels

A label is a textual or HTML content that can attached to markers and shapes to be always displayed or displayed on mouse over. Unlike popups you don’t need to click a marker/polygon for the label to be shown.

Code
library(htmltools)

df <- read.csv(textConnection(
"Name,Lat,Long
Samurai Noodle,47.597131,-122.327298
Kukai Ramen,47.6154,-122.327157
Tsukushinbo,47.59987,-122.326726"))

leaflet(df) %>% addTiles() %>%
  addMarkers(~Long, ~Lat, label = ~htmlEscape(Name))

8 US map

8.1 data source

Code
states <- geojsonio::geojson_read("https://rstudio.github.io/leaflet/json/us-states.geojson", what = "sp")
Code
class(states)
[1] "SpatialPolygonsDataFrame"
attr(,"package")
[1] "sp"
Code
names(states)
[1] "id"      "name"    "density"

9 China one city map

Code
json_data <- sf::read_sf("./GeoMapData_CN/citys/440300.json") 

深圳市:

Code
pal <- colorNumeric("viridis", NULL)

leaflet(json_data) %>%
  addTiles() %>%
  addPolygons(smoothFactor = 0.3, fillOpacity = 0.1)

10 China one province map

Code
json_data <- sf::read_sf("./GeoMapData_CN/province/440000.json") 

广东省 2021 人均gpd usd:

Code
library(openxlsx)
library(readxl)
per_gdp_usd=read_excel('guangdong city gdp2021.xlsx')
Code
map_df <- as.data.frame(json_data)
Code
map_df002 <- merge(map_df, per_gdp_usd, by.x = "name", by.y = "city")
Code
map_sf002 <- sf::st_as_sf(map_df002, sf_column_name = "geometry")

data source:广东统计年鉴2022

Code
pal <- colorNumeric("viridis", NULL)

leaflet(map_sf002) %>%
  addTiles() %>%
  addPolygons(smoothFactor = 0.3, fillOpacity = 0.5,weight = 1,
    fillColor = ~ pal(per_gpd_usd)
    ,popup = ~ paste0(
      "城市:", name, "<br/>",
      "<hr/>",
      "人均gpd:", per_gpd_usd, "(美万)", "<br/>"
      
    )
     ,label = lapply(paste0(
      "城市:", "<b>", map_sf002$name, "</b>", "<br/>",
      "人均gpd 美元:", map_sf002$per_gpd_usd, "<br/>",
      "人均gpd 人民币:", map_sf002$per_gpd_rmb, "<br/>",
       "人口:", round(map_sf002$total_gpd_rmb*10000000/map_sf002$per_gpd_rmb), "<br/>"
    ), htmltools::HTML)
    )%>% addLegend(
    position = "bottomright", title = "人均gpd(美元)",
    pal = pal, values = ~per_gpd_usd, opacity = 1.0
    )

https://zh.wikipedia.org/wiki/%E5%B9%BF%E4%B8%9C%E5%90%84%E5%9C%B0%E7%BA%A7%E5%B8%82%E5%9C%B0%E5%8C%BA%E7%94%9F%E4%BA%A7%E6%80%BB%E5%80%BC%E5%88%97%E8%A1%A8

11 China province map

Code
library(leaflet)
library(sf)

json_data <- sf::read_sf("./GeoMapData_CN/china.json") 


pal <- colorNumeric("viridis", NULL)

leaflet(json_data) %>%
  addTiles() %>%
  addPolygons(smoothFactor = 0.3, fillOpacity = 0.1)

12 China province and city map

Code
map_list <- lapply(
  X = list.files("./GeoMapData_CN/province", recursive = T, full.names = T),
  FUN = sf::read_sf
)

length(map_list)
[1] 34
Code
for (i in c(1:length(map_list))){
   #print(i)
  #print(dim(map_list[[i]]))
  #print(ncol(map_list[[i]]))
  if(ncol(map_list[[i]])!=10){print(map_list[[i]])}
  }
Simple feature collection with 1 feature and 4 fields
Geometry type: MULTIPOLYGON
Dimension:     XY
Bounding box:  xmin: 119.3183 ymin: 21.75147 xmax: 124.5656 ymax: 25.92592
Geodetic CRS:  WGS 84
# A tibble: 1 × 5
  adcode name   center               level                              geometry
  <chr>  <chr>  <chr>                <chr>                    <MULTIPOLYGON [°]>
1 710000 台湾省 121.509062,25.044332 province (((119.5543 23.68248, 119.555 23.…
Code
X = list.files("./GeoMapData_CN/province", recursive = T, full.names = T)

X2=X[-which(X %in% c("./GeoMapData_CN/province/710000.json"
         ))]

map_list <- lapply(
  X = X2,
  FUN = sf::read_sf
)
Code
length(map_list)
[1] 33
Code
province_map <- Reduce("rbind", map_list)
Code
library(leaflet)
library(sf)

json_data <- province_map


pal <- colorNumeric(c("red", "green", "blue"), 1:10)

leaflet(json_data) %>%
  addTiles() %>%
  addPolygons(smoothFactor = 0.3, fillOpacity = 0.1)

13 China city and district map

Code
map_list <- lapply(
  X = list.files("./GeoMapData_CN/citys", recursive = T, full.names = T),
  FUN = sf::read_sf
)

length(map_list)
[1] 334
Code
for (i in c(1:length(map_list))){
   #print(i)
  #print(dim(map_list[[i]]))
  #print(ncol(map_list[[i]]))
  if(ncol(map_list[[i]])!=10){print(map_list[[i]])}
  }
Simple feature collection with 1 feature and 4 fields
Geometry type: POLYGON
Dimension:     XY
Bounding box:  xmin: 113.5215 ymin: 22.65421 xmax: 114.2603 ymax: 23.14205
Geodetic CRS:  WGS 84
# A tibble: 1 × 5
  adcode name   center               level                              geometry
  <chr>  <chr>  <chr>                <chr>                         <POLYGON [°]>
1 441900 东莞市 113.746262,23.046237 city  ((114.2292 22.81251, 114.2278 22.813…
Simple feature collection with 1 feature and 4 fields
Geometry type: POLYGON
Dimension:     XY
Bounding box:  xmin: 113.157 ymin: 22.20104 xmax: 113.692 ymax: 22.7726
Geodetic CRS:  WGS 84
# A tibble: 1 × 5
  adcode name   center               level                              geometry
  <chr>  <chr>  <chr>                <chr>                         <POLYGON [°]>
1 442000 中山市 113.382391,22.521113 city  ((113.5687 22.41193, 113.5666 22.412…
Simple feature collection with 1 feature and 4 fields
Geometry type: MULTIPOLYGON
Dimension:     XY
Bounding box:  xmin: 115.9267 ymin: 20.58265 xmax: 116.9338 ymax: 21.12693
Geodetic CRS:  WGS 84
# A tibble: 1 × 5
  adcode name     center               level                            geometry
  <chr>  <chr>    <chr>                <chr>                  <MULTIPOLYGON [°]>
1 442100 东沙群岛 116.887312,20.617512 city  (((115.9433 21.09745, 115.95 21.11…
Simple feature collection with 1 feature and 4 fields
Geometry type: MULTIPOLYGON
Dimension:     XY
Bounding box:  xmin: 108.9287 ymin: 19.17894 xmax: 109.7694 ymax: 19.92575
Geodetic CRS:  WGS 84
# A tibble: 1 × 5
  adcode name   center               level                              geometry
  <chr>  <chr>  <chr>                <chr>                    <MULTIPOLYGON [°]>
1 460400 儋州市 109.576782,19.517486 city  (((109.4322 19.91302, 109.4253 19.91…
Simple feature collection with 1 feature and 4 fields
Geometry type: MULTIPOLYGON
Dimension:     XY
Bounding box:  xmin: 97.8483 ymin: 39.65426 xmax: 98.52018 ymax: 39.99979
Geodetic CRS:  WGS 84
# A tibble: 1 × 5
  adcode name     center              level                             geometry
  <chr>  <chr>    <chr>               <chr>                   <MULTIPOLYGON [°]>
1 620200 嘉峪关市 98.277304,39.786529 city  (((97.85974 39.7169, 97.85827 39.71…
Code
X = list.files("./GeoMapData_CN/citys", recursive = T, full.names = T)

X2=X[-which(X %in% c("./GeoMapData_CN/citys/620200.json"
         ,"./GeoMapData_CN/citys/460400.json"
              ,"./GeoMapData_CN/citys/442100.json"
              ,"./GeoMapData_CN/citys/442000.json"
              ,"./GeoMapData_CN/citys/441900.json"
         ))]

map_list <- lapply(
  X = X2,
  FUN = sf::read_sf
)
Code
length(map_list)
[1] 329
Code
province_map <- Reduce("rbind", map_list)
Code
library(leaflet)
library(sf)

json_data <- province_map


pal <- colorNumeric(c("red", "green", "blue"), 1:10)

leaflet(json_data) %>%
  addTiles() %>%
  addPolygons(smoothFactor = 0.3, fillOpacity = 0.1)

14 show all map

Code
providers
providers
$OpenStreetMap
[1] "OpenStreetMap"

$OpenStreetMap.Mapnik
[1] "OpenStreetMap.Mapnik"

$OpenStreetMap.DE
[1] "OpenStreetMap.DE"

$OpenStreetMap.CH
[1] "OpenStreetMap.CH"

$OpenStreetMap.France
[1] "OpenStreetMap.France"

$OpenStreetMap.HOT
[1] "OpenStreetMap.HOT"

$OpenStreetMap.BZH
[1] "OpenStreetMap.BZH"

$MapTilesAPI
[1] "MapTilesAPI"

$MapTilesAPI.OSMEnglish
[1] "MapTilesAPI.OSMEnglish"

$MapTilesAPI.OSMFrancais
[1] "MapTilesAPI.OSMFrancais"

$MapTilesAPI.OSMEspagnol
[1] "MapTilesAPI.OSMEspagnol"

$OpenSeaMap
[1] "OpenSeaMap"

$OPNVKarte
[1] "OPNVKarte"

$OpenTopoMap
[1] "OpenTopoMap"

$OpenRailwayMap
[1] "OpenRailwayMap"

$OpenFireMap
[1] "OpenFireMap"

$SafeCast
[1] "SafeCast"

$Stadia
[1] "Stadia"

$Stadia.AlidadeSmooth
[1] "Stadia.AlidadeSmooth"

$Stadia.AlidadeSmoothDark
[1] "Stadia.AlidadeSmoothDark"

$Stadia.OSMBright
[1] "Stadia.OSMBright"

$Stadia.Outdoors
[1] "Stadia.Outdoors"

$Stadia.StamenToner
[1] "Stadia.StamenToner"

$Stadia.StamenTonerBackground
[1] "Stadia.StamenTonerBackground"

$Stadia.StamenTonerLines
[1] "Stadia.StamenTonerLines"

$Stadia.StamenTonerLabels
[1] "Stadia.StamenTonerLabels"

$Stadia.StamenTonerLite
[1] "Stadia.StamenTonerLite"

$Stadia.StamenWatercolor
[1] "Stadia.StamenWatercolor"

$Stadia.StamenTerrain
[1] "Stadia.StamenTerrain"

$Stadia.StamenTerrainBackground
[1] "Stadia.StamenTerrainBackground"

$Stadia.StamenTerrainLabels
[1] "Stadia.StamenTerrainLabels"

$Stadia.StamenTerrainLines
[1] "Stadia.StamenTerrainLines"

$Thunderforest
[1] "Thunderforest"

$Thunderforest.OpenCycleMap
[1] "Thunderforest.OpenCycleMap"

$Thunderforest.Transport
[1] "Thunderforest.Transport"

$Thunderforest.TransportDark
[1] "Thunderforest.TransportDark"

$Thunderforest.SpinalMap
[1] "Thunderforest.SpinalMap"

$Thunderforest.Landscape
[1] "Thunderforest.Landscape"

$Thunderforest.Outdoors
[1] "Thunderforest.Outdoors"

$Thunderforest.Pioneer
[1] "Thunderforest.Pioneer"

$Thunderforest.MobileAtlas
[1] "Thunderforest.MobileAtlas"

$Thunderforest.Neighbourhood
[1] "Thunderforest.Neighbourhood"

$CyclOSM
[1] "CyclOSM"

$Jawg
[1] "Jawg"

$Jawg.Streets
[1] "Jawg.Streets"

$Jawg.Terrain
[1] "Jawg.Terrain"

$Jawg.Sunny
[1] "Jawg.Sunny"

$Jawg.Dark
[1] "Jawg.Dark"

$Jawg.Light
[1] "Jawg.Light"

$Jawg.Matrix
[1] "Jawg.Matrix"

$MapBox
[1] "MapBox"

$MapTiler
[1] "MapTiler"

$MapTiler.Streets
[1] "MapTiler.Streets"

$MapTiler.Basic
[1] "MapTiler.Basic"

$MapTiler.Bright
[1] "MapTiler.Bright"

$MapTiler.Pastel
[1] "MapTiler.Pastel"

$MapTiler.Positron
[1] "MapTiler.Positron"

$MapTiler.Hybrid
[1] "MapTiler.Hybrid"

$MapTiler.Toner
[1] "MapTiler.Toner"

$MapTiler.Topo
[1] "MapTiler.Topo"

$MapTiler.Voyager
[1] "MapTiler.Voyager"

$TomTom
[1] "TomTom"

$TomTom.Basic
[1] "TomTom.Basic"

$TomTom.Hybrid
[1] "TomTom.Hybrid"

$TomTom.Labels
[1] "TomTom.Labels"

$Esri
[1] "Esri"

$Esri.WorldStreetMap
[1] "Esri.WorldStreetMap"

$Esri.DeLorme
[1] "Esri.DeLorme"

$Esri.WorldTopoMap
[1] "Esri.WorldTopoMap"

$Esri.WorldImagery
[1] "Esri.WorldImagery"

$Esri.WorldTerrain
[1] "Esri.WorldTerrain"

$Esri.WorldShadedRelief
[1] "Esri.WorldShadedRelief"

$Esri.WorldPhysical
[1] "Esri.WorldPhysical"

$Esri.OceanBasemap
[1] "Esri.OceanBasemap"

$Esri.NatGeoWorldMap
[1] "Esri.NatGeoWorldMap"

$Esri.WorldGrayCanvas
[1] "Esri.WorldGrayCanvas"

$OpenWeatherMap
[1] "OpenWeatherMap"

$OpenWeatherMap.Clouds
[1] "OpenWeatherMap.Clouds"

$OpenWeatherMap.CloudsClassic
[1] "OpenWeatherMap.CloudsClassic"

$OpenWeatherMap.Precipitation
[1] "OpenWeatherMap.Precipitation"

$OpenWeatherMap.PrecipitationClassic
[1] "OpenWeatherMap.PrecipitationClassic"

$OpenWeatherMap.Rain
[1] "OpenWeatherMap.Rain"

$OpenWeatherMap.RainClassic
[1] "OpenWeatherMap.RainClassic"

$OpenWeatherMap.Pressure
[1] "OpenWeatherMap.Pressure"

$OpenWeatherMap.PressureContour
[1] "OpenWeatherMap.PressureContour"

$OpenWeatherMap.Wind
[1] "OpenWeatherMap.Wind"

$OpenWeatherMap.Temperature
[1] "OpenWeatherMap.Temperature"

$OpenWeatherMap.Snow
[1] "OpenWeatherMap.Snow"

$HERE
[1] "HERE"

$HERE.normalDay
[1] "HERE.normalDay"

$HERE.normalDayCustom
[1] "HERE.normalDayCustom"

$HERE.normalDayGrey
[1] "HERE.normalDayGrey"

$HERE.normalDayMobile
[1] "HERE.normalDayMobile"

$HERE.normalDayGreyMobile
[1] "HERE.normalDayGreyMobile"

$HERE.normalDayTransit
[1] "HERE.normalDayTransit"

$HERE.normalDayTransitMobile
[1] "HERE.normalDayTransitMobile"

$HERE.normalDayTraffic
[1] "HERE.normalDayTraffic"

$HERE.normalNight
[1] "HERE.normalNight"

$HERE.normalNightMobile
[1] "HERE.normalNightMobile"

$HERE.normalNightGrey
[1] "HERE.normalNightGrey"

$HERE.normalNightGreyMobile
[1] "HERE.normalNightGreyMobile"

$HERE.normalNightTransit
[1] "HERE.normalNightTransit"

$HERE.normalNightTransitMobile
[1] "HERE.normalNightTransitMobile"

$HERE.reducedDay
[1] "HERE.reducedDay"

$HERE.reducedNight
[1] "HERE.reducedNight"

$HERE.basicMap
[1] "HERE.basicMap"

$HERE.mapLabels
[1] "HERE.mapLabels"

$HERE.trafficFlow
[1] "HERE.trafficFlow"

$HERE.carnavDayGrey
[1] "HERE.carnavDayGrey"

$HERE.hybridDay
[1] "HERE.hybridDay"

$HERE.hybridDayMobile
[1] "HERE.hybridDayMobile"

$HERE.hybridDayTransit
[1] "HERE.hybridDayTransit"

$HERE.hybridDayGrey
[1] "HERE.hybridDayGrey"

$HERE.hybridDayTraffic
[1] "HERE.hybridDayTraffic"

$HERE.pedestrianDay
[1] "HERE.pedestrianDay"

$HERE.pedestrianNight
[1] "HERE.pedestrianNight"

$HERE.satelliteDay
[1] "HERE.satelliteDay"

$HERE.terrainDay
[1] "HERE.terrainDay"

$HERE.terrainDayMobile
[1] "HERE.terrainDayMobile"

$HEREv3
[1] "HEREv3"

$HEREv3.normalDay
[1] "HEREv3.normalDay"

$HEREv3.normalDayCustom
[1] "HEREv3.normalDayCustom"

$HEREv3.normalDayGrey
[1] "HEREv3.normalDayGrey"

$HEREv3.normalDayMobile
[1] "HEREv3.normalDayMobile"

$HEREv3.normalDayGreyMobile
[1] "HEREv3.normalDayGreyMobile"

$HEREv3.normalDayTransit
[1] "HEREv3.normalDayTransit"

$HEREv3.normalDayTransitMobile
[1] "HEREv3.normalDayTransitMobile"

$HEREv3.normalNight
[1] "HEREv3.normalNight"

$HEREv3.normalNightMobile
[1] "HEREv3.normalNightMobile"

$HEREv3.normalNightGrey
[1] "HEREv3.normalNightGrey"

$HEREv3.normalNightGreyMobile
[1] "HEREv3.normalNightGreyMobile"

$HEREv3.normalNightTransit
[1] "HEREv3.normalNightTransit"

$HEREv3.normalNightTransitMobile
[1] "HEREv3.normalNightTransitMobile"

$HEREv3.reducedDay
[1] "HEREv3.reducedDay"

$HEREv3.reducedNight
[1] "HEREv3.reducedNight"

$HEREv3.basicMap
[1] "HEREv3.basicMap"

$HEREv3.mapLabels
[1] "HEREv3.mapLabels"

$HEREv3.trafficFlow
[1] "HEREv3.trafficFlow"

$HEREv3.carnavDayGrey
[1] "HEREv3.carnavDayGrey"

$HEREv3.hybridDay
[1] "HEREv3.hybridDay"

$HEREv3.hybridDayMobile
[1] "HEREv3.hybridDayMobile"

$HEREv3.hybridDayTransit
[1] "HEREv3.hybridDayTransit"

$HEREv3.hybridDayGrey
[1] "HEREv3.hybridDayGrey"

$HEREv3.pedestrianDay
[1] "HEREv3.pedestrianDay"

$HEREv3.pedestrianNight
[1] "HEREv3.pedestrianNight"

$HEREv3.satelliteDay
[1] "HEREv3.satelliteDay"

$HEREv3.terrainDay
[1] "HEREv3.terrainDay"

$HEREv3.terrainDayMobile
[1] "HEREv3.terrainDayMobile"

$FreeMapSK
[1] "FreeMapSK"

$MtbMap
[1] "MtbMap"

$CartoDB
[1] "CartoDB"

$CartoDB.Positron
[1] "CartoDB.Positron"

$CartoDB.PositronNoLabels
[1] "CartoDB.PositronNoLabels"

$CartoDB.PositronOnlyLabels
[1] "CartoDB.PositronOnlyLabels"

$CartoDB.DarkMatter
[1] "CartoDB.DarkMatter"

$CartoDB.DarkMatterNoLabels
[1] "CartoDB.DarkMatterNoLabels"

$CartoDB.DarkMatterOnlyLabels
[1] "CartoDB.DarkMatterOnlyLabels"

$CartoDB.Voyager
[1] "CartoDB.Voyager"

$CartoDB.VoyagerNoLabels
[1] "CartoDB.VoyagerNoLabels"

$CartoDB.VoyagerOnlyLabels
[1] "CartoDB.VoyagerOnlyLabels"

$CartoDB.VoyagerLabelsUnder
[1] "CartoDB.VoyagerLabelsUnder"

$HikeBike
[1] "HikeBike"

$HikeBike.HikeBike
[1] "HikeBike.HikeBike"

$HikeBike.HillShading
[1] "HikeBike.HillShading"

$BasemapAT
[1] "BasemapAT"

$BasemapAT.basemap
[1] "BasemapAT.basemap"

$BasemapAT.grau
[1] "BasemapAT.grau"

$BasemapAT.overlay
[1] "BasemapAT.overlay"

$BasemapAT.terrain
[1] "BasemapAT.terrain"

$BasemapAT.surface
[1] "BasemapAT.surface"

$BasemapAT.highdpi
[1] "BasemapAT.highdpi"

$BasemapAT.orthofoto
[1] "BasemapAT.orthofoto"

$nlmaps
[1] "nlmaps"

$nlmaps.standaard
[1] "nlmaps.standaard"

$nlmaps.pastel
[1] "nlmaps.pastel"

$nlmaps.grijs
[1] "nlmaps.grijs"

$nlmaps.water
[1] "nlmaps.water"

$nlmaps.luchtfoto
[1] "nlmaps.luchtfoto"

$NASAGIBS
[1] "NASAGIBS"

$NASAGIBS.ModisTerraTrueColorCR
[1] "NASAGIBS.ModisTerraTrueColorCR"

$NASAGIBS.ModisTerraBands367CR
[1] "NASAGIBS.ModisTerraBands367CR"

$NASAGIBS.ViirsEarthAtNight2012
[1] "NASAGIBS.ViirsEarthAtNight2012"

$NASAGIBS.ModisTerraLSTDay
[1] "NASAGIBS.ModisTerraLSTDay"

$NASAGIBS.ModisTerraSnowCover
[1] "NASAGIBS.ModisTerraSnowCover"

$NASAGIBS.ModisTerraAOD
[1] "NASAGIBS.ModisTerraAOD"

$NASAGIBS.ModisTerraChlorophyll
[1] "NASAGIBS.ModisTerraChlorophyll"

$NLS
[1] "NLS"

$JusticeMap
[1] "JusticeMap"

$JusticeMap.income
[1] "JusticeMap.income"

$JusticeMap.americanIndian
[1] "JusticeMap.americanIndian"

$JusticeMap.asian
[1] "JusticeMap.asian"

$JusticeMap.black
[1] "JusticeMap.black"

$JusticeMap.hispanic
[1] "JusticeMap.hispanic"

$JusticeMap.multi
[1] "JusticeMap.multi"

$JusticeMap.nonWhite
[1] "JusticeMap.nonWhite"

$JusticeMap.white
[1] "JusticeMap.white"

$JusticeMap.plurality
[1] "JusticeMap.plurality"

$GeoportailFrance
[1] "GeoportailFrance"

$GeoportailFrance.plan
[1] "GeoportailFrance.plan"

$GeoportailFrance.parcels
[1] "GeoportailFrance.parcels"

$GeoportailFrance.orthos
[1] "GeoportailFrance.orthos"

$OneMapSG
[1] "OneMapSG"

$OneMapSG.Default
[1] "OneMapSG.Default"

$OneMapSG.Night
[1] "OneMapSG.Night"

$OneMapSG.Original
[1] "OneMapSG.Original"

$OneMapSG.Grey
[1] "OneMapSG.Grey"

$OneMapSG.LandLot
[1] "OneMapSG.LandLot"

$USGS
[1] "USGS"

$USGS.USTopo
[1] "USGS.USTopo"

$USGS.USImagery
[1] "USGS.USImagery"

$USGS.USImageryTopo
[1] "USGS.USImageryTopo"

$WaymarkedTrails
[1] "WaymarkedTrails"

$WaymarkedTrails.hiking
[1] "WaymarkedTrails.hiking"

$WaymarkedTrails.cycling
[1] "WaymarkedTrails.cycling"

$WaymarkedTrails.mtb
[1] "WaymarkedTrails.mtb"

$WaymarkedTrails.slopes
[1] "WaymarkedTrails.slopes"

$WaymarkedTrails.riding
[1] "WaymarkedTrails.riding"

$WaymarkedTrails.skating
[1] "WaymarkedTrails.skating"

$OpenAIP
[1] "OpenAIP"

$OpenSnowMap
[1] "OpenSnowMap"

$OpenSnowMap.pistes
[1] "OpenSnowMap.pistes"

$AzureMaps
[1] "AzureMaps"

$AzureMaps.MicrosoftImagery
[1] "AzureMaps.MicrosoftImagery"

$AzureMaps.MicrosoftBaseDarkGrey
[1] "AzureMaps.MicrosoftBaseDarkGrey"

$AzureMaps.MicrosoftBaseRoad
[1] "AzureMaps.MicrosoftBaseRoad"

$AzureMaps.MicrosoftBaseHybridRoad
[1] "AzureMaps.MicrosoftBaseHybridRoad"

$AzureMaps.MicrosoftTerraMain
[1] "AzureMaps.MicrosoftTerraMain"

$AzureMaps.MicrosoftWeatherInfraredMain
[1] "AzureMaps.MicrosoftWeatherInfraredMain"

$AzureMaps.MicrosoftWeatherRadarMain
[1] "AzureMaps.MicrosoftWeatherRadarMain"

$SwissFederalGeoportal
[1] "SwissFederalGeoportal"

$SwissFederalGeoportal.NationalMapColor
[1] "SwissFederalGeoportal.NationalMapColor"

$SwissFederalGeoportal.NationalMapGrey
[1] "SwissFederalGeoportal.NationalMapGrey"

$SwissFederalGeoportal.SWISSIMAGE
[1] "SwissFederalGeoportal.SWISSIMAGE"
Code
sessionInfo()
sessionInfo()
R version 4.3.1 (2023-06-16)
Platform: aarch64-apple-darwin20 (64-bit)
Running under: macOS Sonoma 14.1.1

Matrix products: default
BLAS:   /Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/lib/libRblas.0.dylib 
LAPACK: /Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/lib/libRlapack.dylib;  LAPACK version 3.11.0

locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

time zone: Asia/Shanghai
tzcode source: internal

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
 [1] sf_1.0-16            readxl_1.4.3         openxlsx_4.2.5.2    
 [4] htmltools_0.5.8.1    leaflet.extras_1.0.0 geojsonio_0.11.3    
 [7] leaflet_2.2.2        lubridate_1.9.3      forcats_1.0.0       
[10] stringr_1.5.1        dplyr_1.1.4          purrr_1.0.2         
[13] readr_2.1.5          tidyr_1.3.1          tibble_3.2.1        
[16] ggplot2_3.5.1        tidyverse_2.0.0     

loaded via a namespace (and not attached):
 [1] gtable_0.3.5            xfun_0.43               htmlwidgets_1.6.4      
 [4] lattice_0.22-6          tzdb_0.4.0              leaflet.providers_2.0.0
 [7] vctrs_0.6.5             tools_4.3.1             crosstalk_1.2.1        
[10] generics_0.1.3          curl_5.2.1              proxy_0.4-27           
[13] fansi_1.0.6             pkgconfig_2.0.3         KernSmooth_2.23-22     
[16] RColorBrewer_1.1-3      lifecycle_1.0.4         farver_2.1.1           
[19] compiler_4.3.1          munsell_0.5.1           jqr_1.3.3              
[22] class_7.3-22            yaml_2.3.8              lazyeval_0.2.2         
[25] pillar_1.9.0            jquerylib_0.1.4         classInt_0.4-10        
[28] zip_2.3.1               tidyselect_1.2.1        digest_0.6.35          
[31] stringi_1.8.4           fastmap_1.1.1           grid_4.3.1             
[34] colorspace_2.1-0        cli_3.6.2               magrittr_2.0.3         
[37] triebeard_0.4.1         crul_1.4.2              utf8_1.2.4             
[40] e1071_1.7-14            withr_3.0.0             scales_1.3.0           
[43] sp_2.1-4                timechange_0.3.0        rmarkdown_2.26         
[46] cellranger_1.1.0        hms_1.1.3               evaluate_0.23          
[49] knitr_1.45              V8_4.4.2                viridisLite_0.4.2      
[52] geojson_0.3.5           urltools_1.7.3          rlang_1.1.3            
[55] Rcpp_1.0.12             glue_1.7.0              DBI_1.2.2              
[58] httpcode_0.3.0          geojsonsf_2.0.3         rstudioapi_0.16.0      
[61] jsonlite_1.8.8          R6_2.5.1                units_0.8-5            

15 resouce:

https://rstudio.github.io/leaflet/

https://github.com/Lchiffon/leafletCN

https://github.com/longwosion/geojson-map-china

https://xiangyun.rbind.io/2022/02/draw-china-maps/

https://datav.aliyun.com/portal/school/atlas/area_selector

Back to top